/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Controladores;

import DataTypes.DataEvento;
import DataTypes.DataGrupo;
import Hndlr.HndlrGrupo;
import Hndlr.HndlrUsuario;
import Interfaces.ICrearGrupo;
import enums.enumRol;
import java.util.ArrayList;
import java.util.Iterator;
import objetos.Grupo;
import objetos.Rol;
import objetos.Usuario;

/**
 *
 * @author Sebas
 */
public class CtrlCrearGrupo implements ICrearGrupo {

    private HndlrGrupo Hgrupo = HndlrGrupo.getInstance();
    
    @Override
    public void crearGrupo(DataGrupo dg) {
        Grupo gr = new Grupo(dg);
        Hgrupo.put(dg.getNombre(), gr);
        
        //Agregar grupos a usuarios.
        Iterator<Rol> itera = gr.getUsr().iterator();
        Usuario u = null;
        
        while (itera.hasNext()){
            u = itera.next().getUsr();
            u.agregarGrupo(dg.getNombre());
            
        }
        
        
    }

    @Override
    public ArrayList<DataGrupo> listarGrupos() {
        return Hgrupo.listarGrupos();
    }

    @Override
    public void agregarEvento(DataEvento even,String usu){
        Hgrupo.agregarEvento(even, usu);
     }
    
    @Override
    public void eliminarGrupo(String nombre) {
        Hgrupo.eliminarGrupo(nombre);
    }

    @Override
    public void bloquearContenidoGrupo(String grupo, String titContenido) {
        Grupo gr = Hgrupo.obtenerGrupo(grupo);
        gr.getMuro().bloquearContenido(titContenido);
    }

}
